<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFrameworks>$(NetCoreAppCurrent)-windows;$(NetCoreAppCurrent)-unix;$(NetCoreAppCurrent)-browser</TargetFrameworks>
    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
    <IncludeRemoteExecutor>true</IncludeRemoteExecutor>
  </PropertyGroup>

  <PropertyGroup Condition="'$(TargetOS)' == 'browser'">
    <!-- This doesn't run on V8 shell because https://bugs.chromium.org/p/v8/issues/detail?id=12541 -->
    <Scenario>WasmTestOnBrowser</Scenario>
    <TestArchiveTestsRoot>$(TestArchiveRoot)browserornodejs/</TestArchiveTestsRoot>
    <TestArchiveTestsDir>$(TestArchiveTestsRoot)$(OSPlatformConfig)/</TestArchiveTestsDir>
    <DefineConstants>$(DefineConstants);TARGET_BROWSER</DefineConstants>
  </PropertyGroup>

  <ItemGroup>
    <Compile Include="CompressionStreamUnitTests.ZLib.cs" />
    <Compile Include="CompressionStreamUnitTests.Deflate.cs" />
    <Compile Include="CompressionStreamUnitTests.Gzip.cs" />
    <Compile Include="Utilities\StripHeaderAndFooter.cs" />
    <Compile Include="XunitAssemblyAttributes.cs" />
    <Compile Include="ZipArchive\zip_CreateTests.cs" />
    <Compile Include="ZipArchive\zip_CreateTests.Comments.cs" />
    <Compile Include="ZipArchive\zip_InvalidParametersAndStrangeFiles.cs" />
    <Compile Include="ZipArchive\zip_ManualAndCompatibilityTests.cs" />
    <Compile Include="ZipArchive\zip_netcoreappTests.cs" />
    <Compile Include="ZipArchive\zip_LargeFiles.cs" />
    <Compile Include="ZipArchive\zip_ReadTests.cs" />
    <Compile Include="ZipArchive\zip_UpdateTests.cs" />
    <Compile Include="ZipArchive\zip_UpdateTests.Comments.cs" />
    <Compile Include="$(CommonTestPath)System\IO\PathFeatures.cs" Link="Common\System\IO\PathFeatures.cs" />
    <Compile Include="$(CommonTestPath)System\IO\Compression\CRC.cs" Link="Common\System\IO\Compression\CRC.cs" />
    <Compile Include="$(CommonTestPath)System\IO\Compression\CompressionStreamTestBase.cs" Link="Common\System\IO\Compression\CompressionStreamTestBase.cs" />
    <Compile Include="$(CommonTestPath)System\IO\Compression\CompressionStreamUnitTestBase.cs" Link="Common\System\IO\Compression\CompressionStreamUnitTestBase.cs" />
    <Compile Include="$(CommonTestPath)System\IO\Compression\FileData.cs" Link="Common\System\IO\Compression\FileData.cs" />
    <Compile Include="$(CommonTestPath)System\IO\Compression\LocalMemoryStream.cs" Link="Common\System\IO\Compression\LocalMemoryStream.cs" />
    <Compile Include="$(CommonTestPath)System\IO\Compression\StreamHelpers.cs" Link="Common\System\IO\Compression\StreamHelpers.cs" />
    <Compile Include="$(CommonTestPath)System\IO\TempFile.cs" Link="Common\System\IO\TempFile.cs" />
    <Compile Include="$(CommonTestPath)System\IO\WrappedStream.cs" Link="Common\System\IO\WrappedStream.cs" />
    <Compile Include="$(CommonTestPath)System\IO\Compression\ZipTestHelper.cs" Link="Common\System\IO\Compression\ZipTestHelper.cs" />
    <Compile Include="$(CommonTestPath)TestUtilities\System\DisableParallelization.cs" Link="Common\TestUtilities\System\DisableParallelization.cs" />
    <Compile Include="$(CommonTestPath)System\IO\ConnectedStreams.cs" Link="Common\System\IO\ConnectedStreams.cs" />
    <Compile Include="$(CommonPath)System\Net\MultiArrayBuffer.cs" Link="ProductionCode\Common\System\Net\MultiArrayBuffer.cs" />
    <Compile Include="$(CommonPath)System\Net\StreamBuffer.cs" Link="ProductionCode\Common\System\Net\StreamBuffer.cs" />
  </ItemGroup>
  <ItemGroup Condition="'$(TargetPlatformIdentifier)' == 'unix' or '$(TargetPlatformIdentifier)' == 'browser'">
    <Compile Include="ZipArchive\zip_CreateTests.Unix.cs" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="$(CommonTestPath)StreamConformanceTests\StreamConformanceTests.csproj" />
  </ItemGroup>
  <ItemGroup>
    <PackageReference Include="System.IO.Compression.TestData" Version="$(SystemIOCompressionTestDataVersion)" />
  </ItemGroup>
</Project>
